how to handle events